草庐IT

ios - performSegueWithIdentifier 不会推送 View

全部标签

ruby - 将参数传递给 erb View

我正在尝试使用Ruby和Sinatra将参数传递给erbView。例如,我可以这样做:get'/hello/:name'do"Hello#{params[:name]}!"end如何将:name传递给View?get'/hello/:name'doerb:helloend如何读取view/hello.erb中的参数?谢谢! 最佳答案 只需将:locals传递给路由中的erb()即可:get'/hello/:name'doerb:hello,:locals=>{:name=>params[:name]}end然后在views/hell

ruby-on-rails - View 中 .html.erb 中的 else 语句

在Rails中,我经常遇到这样的情况,在View中我会做类似的事情123somethingelse看起来有点乱。这是处理View的可接受方式吗? 最佳答案 除非您能想出一种方法将其重写为辅助方法,否则您基本上只能坚持使用它,看起来有点丑陋。ERB就是这样,因为它旨在成为将Ruby注入(inject)其他纯文本模板的最小方式,而不是必须流线型或优雅的东西。好消息是语法高亮编辑器通常会让你的ERBblock在视觉上与您的HTML不同,因此可以显着提高可读性。这也是为什么其他表示形式如HAML的原因已经创建了语法不那么困惑的地方:-ifs

ruby-on-rails - 如何更改 Rails 3 Controller 中 View 文件的默认路径?

我有一个名为ProjectsController的Controller。默认情况下,它的操作在app/views/projects中查找View。我想更改所有方法的路径(index、show、new、edit等。.)在Controller中。例如:classProjectsController请注意,我并没有用render更改每个方法,而是为所有这些方法定义了一个默认路径。这可能吗?如果是,怎么办?谢谢! 最佳答案 参见ActionView::ViewPaths::ClassMethods#prepend_view_path.cla

ruby - Ruby 中的 File.open、open 和 IO.foreach 有什么区别?

以下所有API都做同样的事情:打开一个文件并为每一行调用一个block。我们应该优先使用一个而不是另一个吗?File.open("file").each_line{|line|putsline}open("file").each_line{|line|putsline}IO.foreach("file"){|line|putsline} 最佳答案 这3个选择之间存在重要差异。File.open("file").each_line{|行|放置行File.open打开一个本地文件并返回一个文件对象文件保持打开状态,直到您对其调用IO#c

ruby - 为什么Ruby 的Date 类会自动加载而DateTime 不会?

为什么使用IRB会自动加载Date&Time类,但DateTime类不会?我必须require'date',这对我来说没有意义,因为我认为Date和DateTime都在使用标准库'date'?ruby-1.9.2-p290:001>Date=>Dateruby-1.9.2-p290:002>Time=>Timeruby-1.9.2-p290:003>DateTimeNameError:uninitializedconstantObject::DateTimefrom(irb):3from/Users/kamilski81/.rvm/rubies/ruby-1.9.2-p290/bin/

ruby-on-rails - Rails bundler 不会在组内安装 gem

我有几个gem,包括ruby​​-debug,在一个名为:development的bundler组中。当我运行bundle命令时,这些gem将被忽略,它只会安装不在任何组中的gem。我怎样才能确保bundler不会忽略:development组中的gem?编辑:这就是我的Gemfile的样子。source'http://rubygems.org'gem'rails','3.0.1'#Authgemsgem"devise","1.1.3"gem"omniauth"#BundleMongoidgemsgem"mongoid","2.0.0.beta.19"gem"bson_ext"#Ass

ruby-on-rails - 我们可以从 View 调用 Controller 的方法吗(理想情况下我们从 helper 调用)?

在RailsMVC中,您能否从View中调用Controller的方法(因为方法可以从助手中调用)?如果是,如何? 最佳答案 这里是答案:classMyController然后,在您看来,您可以在ERB中引用它,完全符合您对的期望。或: 关于ruby-on-rails-我们可以从View调用Controller的方法吗(理想情况下我们从helper调用)?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

ruby-on-rails - Rails,如何在模型中渲染 View /部分

在我的模型中,我有:after_create:push_create我push_create我需要渲染一个View。我正在尝试这样做:defpush_event(event_type)X["XXXXX-#{Rails.env}"].trigger(event_type,{:content=>render(:partial=>"feeds/feed_item",:locals=>{:feed_item=>self})})end这激怒了rails,因为它不喜欢我在模型中渲染View,但我需要它。错误:NoMethodError(undefinedmethod`render'for#):建议

ruby-on-rails - 为什么所有 Rails 助手都可用于所有 View ,一直?有没有办法禁用它?

为什么我可以在另一个Controller的View中访问一个Controller的辅助方法?有没有办法在不破解/修补Rails的情况下禁用它? 最佳答案 @GeorgeSchreiber的方法在Rails3.1中不起作用;代码发生了重大变化。但是,现在有一种更好的方法可以在Rails3.1(希望是更高版本)中禁用此功能。在您的config/application.rb中,添加这一行:config.action_controller.include_all_helpers=false这将preventApplicationContro

ruby - 从本地文件或 url 打开 IO 流

我知道有其他语言的库可以接受包含本地文件路径或url的字符串,并将其作为可读IO流打开。在ruby​​中有没有简单的方法来做到这一点? 最佳答案 open-uri是标准Ruby库的一部分,它将重新定义open的行为,以便您可以打开url以及本地文件。它返回一个File对象,因此您应该能够调用read和readlines等方法。require'open-uri'file_contents=open('local-file.txt'){|f|f.read}web_contents=open('http://www.stackoverfl